package com.yima.baseproj.utils.wx.weapp.model;

import com.alibaba.fastjson.JSON;
import lombok.Data;

/**
 * 用于存储和处理关于微信小程序的会话数据，包括会话密钥、用户的OpenID和UnionID、错误代码和错误消息
 */
@Data
public class Code2SessionModel {

    /**
     * session_key : 5p+84gsa2hTITF6nBqFOzg==
     * openid : o_USv4jxEJjXTmGaVKALUwN0xatA
     */
    private String session_key; //会话密钥，通常用于保护用户的会话数据，防止被篡改
    private String openid; //用户的 OpenID，是微信用户的唯一标识
    private String unionid; //用户的 UnionID，是微信用户在同一个开发者账号下不同小程序的唯一标识
    private int errcode; //存储错误代码
    private String errmsg; //存储错误消息

    /**
     * 接受一个字符串参数，将输入的字符串转化为一个 Code2SessionModel 对象并返回
     * @param str
     * @return
     */
    public static Code2SessionModel objectFromData(String str) {
        return JSON.parseObject(str, Code2SessionModel.class); //将字符串转化为对象
    }
}
